﻿

//获取专家分类树形
function getCategorys(str_url) {
    $.ajax({
        type: "GET",
        url: str_url,
        dataType: "json",
        success: function (data) {
            //初始化专业专家的所属分类
            $.fn.zTree.init($("#treeCategory"), setting, data);

            //判断当前显示的类型ID是否为空，如果不是，在树形菜单中查找该ID的节点，展开并设置为选中
            var this_id = $("#typeId").val();

            //根据节点的Id，获取节点
            var treeObj = $.fn.zTree.getZTreeObj("treeCategory");
            var nodes = treeObj.getNodesByParam("id", this_id, null);

            //设置当前节点为选定，展开
            if (nodes.length > 0) {
                treeObj.selectNode(nodes[0]);
                treeObj.expandNode(nodes[0], true, true, false);
            } else {
                $("#typeId").val("");
                $("#typePId").val("");
                $("#typeCode").val("");
                $("#typeName").val("");
            }
        }
    });
}

//节点的点击
function onClick() {
    var treeObj = $.fn.zTree.getZTreeObj("treeCategory");
    var nodes = treeObj.getSelectedNodes();
    if (nodes.length > 0) {
        $.ajax({
            type: "GET",
            url: strUrlgetCategoryById,
            dataType: "json",
            data: { category_id: nodes[0].id },
            success: function (data) {
                //初始化界面
                $("#typeId").val(data.id);
                $("#typePId").val(data.pid);
                $("#typeCode").val(data.code);
                $("#typeName").val(data.name);

            }
        });
    }
}

//取消按钮按下，清空当前选中的类型记录，清空树形菜单的选中状态
function onCancel() {
    //清空类型信息
    $("#typeId").val("");
    $("#typePId").val("");
    $("#typeCode").val("");
    $("#typeName").val("");

    //清除树形菜单选定
    var treeObj = $.fn.zTree.getZTreeObj("treeCategory");
    var nodes = treeObj.getSelectedNodes();
    for (i = 0; i < nodes.length; i++) {
        treeObj.cancelSelectedNode(nodes[i]);
    }
}

//添加一个根节点
function newRoot() {
    $.ajax({
        type: "GET",
        url: strUrladdRootCategory,
        dataType: "json",
        success: function (data) {
            if (data == null || data == "") {
                getCategorys(strUrlgetCategorys);
            } else {
                //错误，提示错误消息
                alertMSG(data);
            }
        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert(textStatus);
        }
    });
}

//添加当前选定节点的子节点
function newSub() {
    if ($("#typeId").val() == null || $("#typeId").val() == "undefined" || $("#typeId").val() == "") {
        alertMSG("请首先选择一个类型。");
        return;
    } else {
        var this_id = $("#typeId").val();
        $.ajax({
            type: "GET",
            url: strUrladdSubCategory,
            dataType: "json",
            data: { thisCategoryId: this_id },
            success: function (data) {
                if (data == null || data == "") {
                    getCategorys(strUrlgetCategorys);
                } else {
                    //错误，提示错误消息
                    alertMSG(data);
                }
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                alert(textStatus);
            }
        });
    }
}

//删除按钮按下，删除
function onDelete() {
    
    var tid = $("#typeId").val();

    //提交保存
    $.ajax({
        type: "GET",
        url: strUrldeleteCategory,
        dataType: "json",
        data: { thisCategoryId: tid },
        success: function (data) {
            if (data == null || data == "") {
                getCategorys(strUrlgetCategorys);
            } else {
                //错误，提示错误消息
                alertMSG(data);
            }
        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert(textStatus);
        }
    });
}

//删除按钮按下，删除
function onSave() {
    //设置类型信息
    var tid = $("#typeId").val();
    var tcode = $("#typeCode").val();
    var tname = $("#typeName").val();

    //提交保存
    $.ajax({
        type: "GET",
        url: strUrlsaveCategory,
        dataType: "json",
        data: { thisCategoryId: tid, thisCategoryCode: tcode, thisCategoryName: tname },
        success: function (data) {
            if (data == null || data == "") {
                getCategorys(strUrlgetCategorys);
            } else {
                //错误，提示错误消息
                alertMSG(data);
            }
        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert(textStatus);
        }
    });
}